futures-preview 0.3.0-alpha.19

An implementation of futures and streams featuring zero allocations, composability, and iterator-like interfaces.
Documentation
Abstractions for asynchronous programming. This crate provides a number of core abstractions for writing asynchronous code: - [Futures](crate::future::Future) are single eventual values produced by asynchronous computations. Some programming languages (e.g. JavaScript) call this concept "promise". - [Streams](crate::stream::Stream) represent a series of values produced asynchronously. - [Sinks](crate::sink::Sink) provide support for asynchronous writing of data. - [Executors](crate::executor) are responsible for running asynchronous tasks. The crate also contains abstractions for [asynchronous I/O](crate::io) and [cross-task communication](crate::channel). Underlying all of this is the *task system*, which is a form of lightweight threading. Large asynchronous computations are built up using futures, streams and sinks, and then spawned as independent tasks that are run to completion, but *do not block* the thread running them.